import axios from 'axios'
import NProgress from 'nprogress'
import 'nprogress/nprogress.css'
// 引入用户Id
import { getUserTempId } from '@/utils/getTempId'
import store from '@/store'
// const token = store.state.user.userInfo.token

// 2. 创建实例对象
const ajax = axios.create({
  // baseURL: 'http://39.98.123.211/',
  // baseURL:'http://sph-h5-api.atguigu.cn',
  baseURL:'http://gmall-h5-api.atguigu.cn/',
  timeout: 5000
});

// 设置请求拦截器
ajax.interceptors.request.use((config) => {
  NProgress.start()
  // 只要发送请求，就会先走这个请求拦截器
  // 可以在请求拦截器当中做一些统一的操作，比如说设置进度条，设置请求头
  // console.log(config)
  config.headers.userTempId = getUserTempId()
  const token = store.state.user.userInfo.token
  if (token) {
    config.headers.token = token
  }
  return config
})

// 设置响应拦截器
ajax.interceptors.response.use(
  (response) => {
    // 只要服务器响应回来了信息，一定会先走响应拦截器，再走后续的流程
    NProgress.done()
    // console.log(response)
    return response.data
  },
  (err) => {
    NProgress.done()
    return Promise.reject(new Error(err.msg))
  }
)
export default ajax
